In a wireless communication network such as a Long-Term Evolution (LTE) network, designing and implementing a MAC layer scheduler for an LTE base station (e.g., an evolved NodeB (e-NodeB)) is difficult because the scheduler has to solve a complex optimization problem in a tight time budget when determining to which user equipment (UE) to assign various available resource blocks. The scheduler solves such a complex optimization problem at each subframe, defined in LTE as a one-millisecond interval. In addition to scheduling, the scheduler performs a few additional tasks, such as static and semi-static channel scheduling, and HARQ retransmissions.
Commonly, a scheduler of an eNodeB allocates frequencies to a UE served by the eNodeB in groups of 12 subcarriers per subframe. Each group of 12 subcarriers is referred to as a resource block (RB). A mapping from resource blocks to users may be referred to as a schedule.
Currently utilized schedulers determine user priority metrics (e.g., values) for each schedulable (available) UE and group of RBs to discover optimal schedules. Given that computational resources (hardware) and time per subframe are fixed, the currently used approach faces a limit on the maximum number of UEs that an eNodeB scheduler can handle. Furthermore, currently utilized schedulers determine, from scratch, the user priority metrics at each subframe, which is system resource and power intensive.